Skip to content

fix: use bitrise builds same as performance tests#29926

Merged
pnarayanaswamy merged 2 commits into
mainfrom
fix-nightly-run
May 12, 2026
Merged

fix: use bitrise builds same as performance tests#29926
pnarayanaswamy merged 2 commits into
mainfrom
fix-nightly-run

Conversation

@pnarayanaswamy
Copy link
Copy Markdown
Contributor

@pnarayanaswamy pnarayanaswamy commented May 8, 2026

Description

For nightly system tests use the same Bitrise build + BrowserStack upload pipeline same as performance tests

Changelog

CHANGELOG entry:

Related issues

Fixes:

Manual testing steps

Feature: my feature name

  Scenario: user [verb for user action]
    Given [describe expected initial app state]

    When user [verb for user action]
    Then [describe expected outcome]

Screenshots/Recordings

Before

After

Pre-merge author checklist

Performance checks (if applicable)

  • I've tested on Android
    • Ideally on a mid-range device; emulator is acceptable
  • I've tested with a power user scenario
    • Use these power-user SRPs to import wallets with many accounts and tokens
  • I've instrumented key operations with Sentry traces for production performance metrics

For performance guidelines and tooling, see the Performance Guide.

Pre-merge reviewer checklist

  • I've manually tested the PR (e.g. pull and build branch, run the app, test code being changed).
  • I confirm that this PR addresses all acceptance criteria described in the ticket it closes and includes the necessary testing evidence such as recordings and or screenshots.

Note

Medium Risk
Medium risk because it rewires the nightly system test build/upload pipeline to depend on Bitrise workflow outputs; misconfigured inputs/outputs or permissions could cause tests to skip or run against wrong app builds.

Overview
Nightly system tests now use the same Bitrise → BrowserStack pipeline as performance tests. The run-system-tests.yml workflow replaces the in-GitHub build + artifact upload flow with reusable build-android-upload-to-browserstack.yml / build-ios-upload-to-browserstack.yml calls and wires test jobs to consume their with-srp/without-srp BrowserStack URLs (or manual inputs).

It also removes the dedicated upload-to-browserstack job and updates job gating/permissions to run/skip appropriately based on whether Bitrise builds were triggered or manual BrowserStack URLs were provided.

Separately, builds.yml drops the main-rc-with-srp build configuration that previously baked SRP/password into the RC build for system tests.

Reviewed by Cursor Bugbot for commit 8254c01. Bugbot is set up for automated code reviews on this repo. Configure here.

@pnarayanaswamy pnarayanaswamy requested review from a team as code owners May 8, 2026 15:29
@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented May 8, 2026

CLA Signature Action: All authors have signed the CLA. You may need to manually re-run the blocking PR check if it doesn't pass in a few minutes.

@github-actions github-actions Bot added the pr-not-ready-for-e2e Skip E2E and block merging. Remove this label once the PR is ready to run the E2E tests. label May 8, 2026
@metamaskbotv2 metamaskbotv2 Bot added the team-qa QA team label May 8, 2026
@github-actions github-actions Bot added the size-M label May 8, 2026
@pnarayanaswamy pnarayanaswamy added no-changelog no-changelog Indicates no external facing user changes, therefore no changelog documentation needed and removed pr-not-ready-for-e2e Skip E2E and block merging. Remove this label once the PR is ready to run the E2E tests. labels May 8, 2026
@pnarayanaswamy pnarayanaswamy enabled auto-merge May 8, 2026 17:01
tommasini
tommasini previously approved these changes May 8, 2026
@pnarayanaswamy pnarayanaswamy added this pull request to the merge queue May 8, 2026
@github-merge-queue github-merge-queue Bot removed this pull request from the merge queue due to failed status checks May 8, 2026
@pnarayanaswamy pnarayanaswamy dismissed stale reviews from tommasini and javiergarciavera via 8254c01 May 11, 2026 08:05
@pnarayanaswamy pnarayanaswamy enabled auto-merge May 11, 2026 08:06
@github-actions
Copy link
Copy Markdown
Contributor

🔍 Smart E2E Test Selection

  • Selected E2E tags: None (no tests recommended)
  • Selected Performance tags: None (no tests recommended)
  • Risk Level: low
  • AI Confidence: 92%
click to see 🤖 AI reasoning details

E2E Test Selection:
The two changed files are purely CI/infrastructure changes with no impact on Detox E2E tests:

  1. .github/workflows/run-system-tests.yml: This workflow orchestrates BrowserStack system tests (WebDriverIO-based, not Detox). The change refactors the build pipeline by:

    • Removing inline build jobs (build-with-srp, build-clean) and the large inline upload-to-browserstack job
    • Replacing them with two new delegating jobs that call the reusable workflows build-android-upload-to-browserstack.yml and build-ios-upload-to-browserstack.yml (which use Bitrise for builds)
    • Updating downstream test job dependencies and output key references accordingly
    • Tightening permissions (contents: write → read)
      This is a pure CI refactoring — no Detox test code, app source code, page objects, or test fixtures were changed.
  2. builds.yml: Removes the main-rc-with-srp build configuration that baked SRP secrets into the build at compile time. This is no longer needed because the new Bitrise-triggered workflow injects these secrets dynamically at build trigger time. This is a build configuration cleanup with no effect on Detox tests.

Neither file touches: app source code, Detox test files, test page objects, test fixtures, test framework infrastructure, or any component that would affect Detox E2E test execution. The system tests being served by this workflow are WebDriverIO/BrowserStack tests, which are a completely separate test framework from Detox. No Detox tags should be selected.

Performance Test Selection:
The changes are purely CI/build pipeline refactoring with no app source code modifications. No performance-sensitive code paths (UI rendering, state management, data loading, app startup) were touched. Performance tests are not warranted.

View GitHub Actions results

@sonarqubecloud
Copy link
Copy Markdown

@pnarayanaswamy pnarayanaswamy added this pull request to the merge queue May 12, 2026
Merged via the queue into main with commit e88fd67 May 12, 2026
62 checks passed
@pnarayanaswamy pnarayanaswamy deleted the fix-nightly-run branch May 12, 2026 11:03
@github-actions github-actions Bot locked and limited conversation to collaborators May 12, 2026
@metamaskbotv2 metamaskbotv2 Bot added the release-7.78.0 Issue or pull request that will be included in release 7.78.0 label May 12, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

no-changelog no-changelog Indicates no external facing user changes, therefore no changelog documentation needed release-7.78.0 Issue or pull request that will be included in release 7.78.0 size-M team-qa QA team

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants